﻿#region Using Directives

using System;

using Csla;

#endregion

namespace MarketPulse.BusinessLogic.Common.Criteria
{
    /// <summary>
    /// Criteria class specifying the GUID to use to identify a single EnquiryActionType
    /// </summary>
    [Serializable]
    public class EnquiryActionTypeGUIDCriteria : CriteriaBase<EnquiryActionTypeGUIDCriteria>
    {

        #region Constructors

            /// <summary>
            /// Default constructor for this class
            /// </summary>
            /// <param name="enquiryActionTypeGuid">The Guid of the EnquiryActionType to associate with this criteria</param>                      
            public EnquiryActionTypeGUIDCriteria(Guid enquiryActionTypeGuid)
            {
                EnquiryActionTypeGUID = enquiryActionTypeGuid;
            }

        #endregion

        #region Properties

            /// <summary>
            /// This Guid is used to identify the EnquiryActionType object associated with this criteria
            /// </summary>
            public static PropertyInfo<Guid?> EnquiryActionTypeGUIDProperty = RegisterProperty<Guid?>(p => p.EnquiryActionTypeGUID);
            /// <summary>
            /// This Guid is used to identify the EnquiryActionType object associated with this criteria
            /// </summary>
            public Guid? EnquiryActionTypeGUID
            {
                get { return ReadProperty(EnquiryActionTypeGUIDProperty); }
                private set { LoadProperty(EnquiryActionTypeGUIDProperty, value); }
            }

        #endregion

    }
}
